Mobile content service

ABSTRACT

Standard content created for use on non-mobile platforms, such as personal computers, is made available and useful to mobile devices. A request for content from a mobile device is sent to a mobile server using the DNS or a redirect from a standard content server. The mobile server obtains the standard content and normalizes it for use on the mobile device. The normalized content is sent to the requesting mobile device.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of U.S. provisional patentapplication 60/950,520, “Mobile Content Service,” filed on Jul. 18,2007.

FIELD OF THE INVENTION

The field of the invention relates to computer networking, and inparticular, providing content suitable for display and interaction on afirst device or type of device (such as a mobile device) based uponcontent that was originally created and formatted for display on asecond device or type of device (e.g., a non-mobile platform, such as apersonal computer.)

BACKGROUND OF THE INVENTION

The increasing number and capabilities of mobile devices is causing agrowing demand for web-based content that is easy to understand andinteract with on such devices. However, there have been numerousimpediments to satisfying this demand. Mobile devices tend to have asmall screen, not only because of size limitations, but also because ofpower consumption and battery-life concerns. Examples of mobile devicesinclude cell phones, handheld computers, etc. Bandwidth limitations alsocomplicate this matter because wireless communication techniques canhave problems handling the large data interchange that can more easilybe processed on a broadband connection for a typical standard computingdevice, such as a laptop or a desktop computer. Also, mobile inputdevices (e.g., keypads) can he more limited than traditional, PersonalComputer (PC) based input devices, such as full-sized keyboards andmice.

There is a need for making standard web content available in a mobileformat more suitable to the capabilities of mobile devices. An exampleof standard web content is a web site adapted to be rendered by apersonal computer, such as a desktop or laptop computer. Certain knownsolutions to overcome this problem have been deployed, but have not beenwidely successful or widely adopted. In one solution, a content providercreates and stores two versions of its web site on the Internet. Thefirst version is the standard one designed to be used with a PC. Theother version mirrors the first, but is stripped down for mobileapplications. When a user request is received, the request is analyzedto determine if it originated from a mobile device and, if so, themobile version is served. This two-version solution can be expensive.Two different but coherent sites must be created and updated, ratherthan one site. Further, each site is usually associated with a distinctdomain name, so a user must remember two such names to reach the site ona PC or mobile device.

Another solution requires only a single web site and applies dynamicstyling (via web site stylesheets) to render a version of the regularweb site to mobile devices. Unfortunately, this requires additionaldevelopment efforts in order to achieve a consistent look and feelacross multiple client devices.

Another solution requires mobile users to browse web sites using a proxyservice that is explicitly engaged by the mobile user, such as anInternet search engine. A capable Internet search engine would detectthe mobile device employed by the user, and would automatically renderall web sites appearing in search results in such a manner that iscompatible with the majority of mobile devices. This mobile compatiblerendering is only presented when users utilize an Internet search enginethat provides this inherent service. The same mobile user may browsedirectly to a web site and then not receive the mobile compatiblerendering because they did not reach the web site through search resultspresented by an Internet search engine with these mobile devicedetection and proxy capabilities.

What is needed is a way to easily provide web content to a user in a waythat is effective for both mobile and non-mobile devices whileminimizing the burden on the content provider of providing such content,that is easier to sec and understand and that doesn't require separateweb sites for mobile devices and non-mobile platforms.

SUMMARY OF THE INVENTION

A request for content can be received at a web server that hostsstandard content. When the request is determined to have originated froma mobile device, the request can be redirected to a standard-to-mobileconversion server. The web server can receive a reverse proxy call fromthe standard-to-mobile conversion server for the standard content asrequested by the mobile device user. The requested content can be sentto the standard-to-mobile conversion server, which can convert it tomobile content and send it to the requesting user.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a block diagram of a system for generating andtransmitting mobile content in accordance with an embodiment of thepresent invention.

FIG. 2 illustrates a block diagram of a mobile server for providingmobile content in accordance with an embodiment of the presentinvention.

FIG. 3 illustrates a signal flow diagram of a method for generating andproviding mobile content in accordance with an embodiment of the presentinvention.

FIG. 4 illustrates a signal flow diagram of a method for generating andproviding mobile content in accordance with an embodiment of the presentinvention.

DETAILED DESCRIPTION OF THE INVENTION

In accordance with an embodiment of the present invention, a system andmethod can properly route a request for web content that originates froma mobile device, convert existing web content designed for non-mobileend users into mobile-compatible content and deliver such content to therequesting mobile device. In general, the present invention can be usedto handle a request that originates from any kind of device and convertcontent from a first format to a second format suitable to be renderedon the requesting device.

In various embodiments of the present invention, a web server may berepresented by multiple web servers virtualized as a single, logical webserver accessible via a single URL or IP address.

In one embodiment, the same URL and web server is used to access bothmobile information (“mobile content”) and non-mobile information(“standard content”). The request can be sent to a web server that iscapable of determining whether the requester is a mobile or non-mobiledevice, e.g., based upon information contained in the HTTP request, suchas utilizing the user-agent field in the HTTP request. If the request isfrom a non-mobile device, the locally available, non-mobile content isserved unaltered. If the request is from a mobile device, the web serverconverts the locally available, non-mobile content to mobile compatiblecontent in real-time, and returns it to the requesting mobile end user.In this way, the same domain name can be used in accordance with anembodiment of the present invention to transparently present a web sitein a rendering suitable for users using devices of differingcapabilities.

Alternatively, a different URL can be used specifically for handlingmobile content requests. For example, www.content.com can be used torequest non-mobile content, while mobile.content.com or content.mobi canbe used to request mobile content. In each case, the Domain Name System(DNS) can return one or more distinct IP addresses for the non-mobileweb server and mobile web server. The web server answering forwww.content.com (non-mobile) can detect the requesting mobile device andreturn an HTTP redirect, forcing the mobile device to re-issue itsoriginal request to the content.mobi web server. Upon receiving thisrequest, the content.mobi web server can identify the location of theauthoritative content at www.content.com, and using a reverse proxymechanism and real-time transform, return a mobile-compatible renderingof the content.

The web site that includes the requested content can be hosted by themobile server service provider or a remote ISP. Only a single web siteneed be maintained in accordance with the present invention. That is, noseparate mobile and non-mobile web sites need be maintained. If the webshe is hosted by the mobile server provider and a request for mobilecontent is received, the mobile server can transform the web content inreal-time to mobile-device-compatible content that is easy to understandand to use. In one embodiment, this is done by normalizing (converting)the HTML version of the requested content output from the hosting website to XHTML-MP. The XHTML-MP content is then served to the requestingmobile device.

If the content is hosted on a web server remote from the mobile server(e.g., by a remote ISP), then a reverse proxy call can be made by themobile server to the remote server. HTML-based content can be obtainedfrom the remote server, normalized (converted) by the mobile server toXHTML-MP or any other suitable mobile format and then served to therequesting mobile device.

FIG. 1 illustrates a block diagram of a system for generating andtransmitting mobile content in accordance with one embodiment of thepresent invention. A mobile device 100, the Domain Name System 101, aweb server 102 and a mobile server 103 are coupled through a network 104such as the Internet. Mobile server 103 can also be known as a standardto mobile conversion server. The mobile device 100 may be any devicethat is operative to generate a content request, such as a mobile phone,a smart phone, an internet-enabled personal digital assistant or anyother suitable type of mobile communication device capable of requestingand receiving Internet content.

FIG. 2 illustrates a block diagram of a mobile server for generating andproviding mobile content. A receiver module 201 receives HTTP requestsfor web content from a mobile device over a network (not shown) such asthe Internet. An HTML-based content fetcher 202 obtains web contentbased upon the request. Here, HTML content is not meant to be limited toHTML script, but can include any and all of the content normallyassociated with a web page, as well as associated softwarefunctionality, e.g., as implemented in Java, JavaScript, etc. TheHTML-based content is obtained by the content fetcher 202 from a remoteweb server by invoking a reverse proxy call module 203 or from a localstorage site, such as a hard disk or database 204. The location of aremotely hosted web server that stores the content sought in the requestfrom the mobile device can be found by performing a lookup in a database205. The database 205 can correlate information received in a requestwith the location of a remote web server. For example, if a request isreceived for content.mobi, the database 205 can include a record thatcorrelates content.mobi with content.com. The incoming content.mobirequest causes a request for content to be issued by the reverse proxycall module 203 to content.com.

Once the content is obtained, it can be converted (normalized) tomobile-compatible formats using a normalization module 206. Thenormalization module 206 then sends the normalized content (e.g., usingXHTML-MP) to the requesting mobile device.

The mobile server 103 can include one or more microprocessors coupled tomemory that stores instructions adapted to be executed by theprocessors. The processors can include a general purpose microprocessorand/or an Application Specific Integrated Circuit. Memory can be anydevice capable of storing digital information, such as RAM, ROM, a harddisk, flash memory, etc. The modules shown in FIG. 2 can be implementedin hardware, software or a combination thereof.

FIG. 3 illustrates a signal flow diagram for generating and providingmobile content in accordance with one embodiment of the presentinvention. In this embodiment, a mobile device issues a request to theweb server for a non-mobile web site. The web server can recognize therequest as originating from a mobile device by examining aspects of therequest, such as, among other things, embedded meta code that caninclude browser identifiers, flags, source addresses, etc., contents ofthe URL, the source IP address, etc. The web server can redirect themobile device to query the mobile server. The mobile server candetermine that the web content is not locally hosted on the mobileserver and can perform a lookup to identify the address of the remotelocation where the remote content is hosted. The lookup is performedusing a database that correlates information contained in the redirectedrequest from the mobile platform with an address of remotely hostedcontent that is responsive to the request.

Using information obtained from the lookup, the mobile server can send areverse proxy request to the identified remote web server. Although FIG.3 shows the reverse proxy request going to the web server that receivedthe original request from the user, the reverse proxy call can go to anyweb server, even one that is different from that which received theinitial request from the mobile device. The mobile server can thenobtain HTML-based content from the web server. The mobile servernormalizes (converts) this content into a form that is useful to therequesting mobile device and returns it to that device.

In accordance with various embodiments of the present invention, anadvertisement can be inserted into the content for delivery to themobile device. Likewise, media content (e.g., WAV, MP3, QuickTime, etc.)may be converted into another format, e.g., a WAV file may be convertedinto an MP3 file. Media content may also be modified to play on thetarget mobile device.

FIG. 4 illustrates a signal flow diagram of a method for generating andproviding mobile content in accordance with an embodiment of the presentinvention. Here, the requested web content is hosted locally at themobile server. Thus, a reverse proxy request is not necessary. Rather,after determining that the content is locally hosted in a lookup step,the mobile server locates the content on a local hard disk, normalizesit and sends it to the requesting mobile device. The locally storedcontent can be in the local memory (e.g., RAM, hard disk, etc.) of themobile server, or accessible to the mobile server via a Local AreaNetwork or a Wide Area Network.

The mobile server 103 can provide additional services in makingnon-mobile content available and useful to mobile devices. For example,the mobile server can authenticate the requesting mobile device beforeproviding the requested content. Likewise, the mobile server can providesubstitute software functionality that may be present in the non-mobileweb site by storing in the database 204 or 205 records that correlatecommonly used non-mobile web application programs with mobile-enabledapplication programs. For example, a media player on the non-mobile sitemay be correlated to a media player adapted to be executed on the mobiledevice. The mobile media player may be substituted for the non-mobileplayer as part of the normalization process. This can be donedifferently depending upon the specific type of mobile device making therequest. For example, the database may include records that correlatethe non-mobile application with the type of requesting mobile device andone or more media players that can run on that mobile device. The recordcan also correlate specific attributes of content (e.g., size, encodingscheme, digital rights management scheme, etc.) on the non-mobile sitewith attributes of the requesting mobile device (e.g., manufacturer,model identifier, etc.) and suitable application programs for use on themobile device for rendering the content. In this way, the mobile servercan better normalize the non-mobile content for the requesting mobiledevice. The normalization process can include converting the format andother properties of content at web site so that the content can berendered and used on the mobile device. For example, a WMV-formattedvideo can be converted into an MPEG-4 video to be able to be rendered ona mobile device with a MPEG-4 player. The frames of the video can beresized or cropped to make it easier to view on a mobile device. Digitalrights management information associated with the video may be changed,e.g., a video that can only be viewed without skipping ahead on anon-mobile platform may be permitted to be viewed with a fast-forwardfeature on a mobile device. Different advertisements may be insertedinto content as part of the normalization process for a mobile device.In other words, a first advertisement may be inserted into the contentwhen the request is not determined to originate from a mobile device,while a second advertisement may be inserted when the request isdetermined to originate from a mobile device. In some embodiments, thesecond advertisement may be the first advertisement that has beenreformatted and/or otherwise adjusted to be properly rendered on themobile device. In other embodiments the second advertisement may be fora different product or service than the first advertisement.Advertisements can be selected to target a mobile device user.

It should also be noted that different mobile devices may have differentnormalization requirement to transform standard content tomobile-device-compatible format for particular devices or types ofdevices. In accordance with embodiments of the present invention, deviceprofiles for individual devices and/or types of devices may be stored ina database and used by the system in accordance with the presentinvention to properly normalize standard content to mobile content.Thus, when a request for content is received, the identity of theindividual device or device type can be ascertained. This can be done inany suitable way, such as by examining embedded meta code in the flow ofinformation between the requesting device and the recipient of thecontent request, such as browser identifiers, flags, source addresses,etc., contents of the URL, the source IP address, etc. Information aboutthe device identity or device type can be used to look up a profile fromthe profiles database. Standard content can be obtained and thennormalized in accordance with information contained in the retrievedprofile. For example, a profile may specify the preferred or requiredformat of the normalized content, e.g., XHTML-MP, WML, etc., mobileprovider, mobile phone number, privacy settings, parental controlsettings, display parameters, etc. When the standard content has beennormalized to mobile content in accordance with the profile, the mobilecontent can be sent to the mobile device.

Several embodiments of the present invention are specificallyillustrated and described herein. However, it will be appreciated thatmodifications and variations of the present invention are covered by theabove teachings and within the purview of the appended claims withoutdeparting from the spirit and intended scope of the invention.

In general, certain embodiments of the present invention can provide amethod for providing mobile content based on standard content. A contentrequest can be received from a mobile device and an address of a webserver that hosts standard content can be determined. Based upon thisdetermination, a reverse proxy call can be sent to the web server thathosts the standard content. The standard content can be obtained fromthe web server and transformed to mobile content, i.e., contentcompatible with a mobile device. The transformed content (“mobilecontent”) can be provided to the requesting mobile device.

The address of the web server that hosts the standard content can bedetermined by searching a database using a query that can be based uponinformation contained in the content request. The query can identify arecord that correlates the standard content with at least one address ofa standard content web server.

The standard content can be transformed from HTML-based content into anysuitable mobile-compatible content, such as XHTML-MP-based content.

A system in accordance with an embodiment of the present invention caninclude a receiver module operative to receive a content request from arequesting entity and a standard content fetcher operative to look up alocation of the requested content. If the location of the content isremote, the standard content fetcher can issue a reverse proxy call tofetch the requested content, which is standard, non-mobile content. Ifthe location of the content is determined to be local, then requestedcontent can be obtained from a local server. The content on the localserver is standard, non-mobile content. A standard-to-mobile contentnormalizes operative can normalize the standard Content into mobilecontent and send the normalized mobile content to a mobile device. Thenormalized content can be in any suitable format for a mobile device,such as XHTML-XP-based content.

Although the foregoing description has illustrated the present inventionin the context of converting standard content to mobile content, thoseof skill in the art will appreciate that embodiments of the presentinvention can be used to convert any content from a format into a secondformat. For example, an embodiment of the present invention can be usedto convert mobile content to standard content. In other words,embodiments of the present invention can be used to convert content thatis adapted to be rendered by a first device or first type of device intocontent that is adapted to be rendered by a second device or second typeof device. Thus, embodiments of the present invention may be used toconvert content stored as text into content to be rendered as speech,and vice versa; convert content stored as video into content to berendered as stills, and vice versa; etc.

While the invention has been described with reference to exemplaryembodiments, it will be understood by those skilled in the art thatvarious changes may be made and equivalents may be substituted forelements thereof without departing from the scope of the invention. Inaddition, many modifications may be made to adapt a particular situationor material to the teachings of the invention without departing from theessential scope thereof. Therefore, it is intended that the inventionnot be limited to the particular embodiment disclosed as the best oronly mode contemplated for carrying out this invention, but that theinvention will include all embodiments falling within the scope of theappended claims. Also, in the drawings and the description, there havebeen disclosed exemplary embodiments of the invention and, althoughspecific terms may have been employed, they are unless otherwise statedused in a generic and descriptive sense only and not for purposes oflimitation, the scope of the invention therefore not being so limited.Moreover, the use of the terms first, second, etc. do not denote anyorder or importance, but rather the terms first, second, etc. are usedto distinguish one element from another. Furthermore, the use of theterms a, an, etc. do not denote a limitation of quantity, but ratherdenote the presence of at least one of the referenced item.

1. A method for providing mobile and standard content, the methodcomprising: receiving, at first server, a plurality of requests forcontent, each request received from either a mobile device or a standarddevice; determining that a first request of the plurality of requests isa mobile request that originated from a mobile device; identifying ahosting web server that hosts the requested content; requesting therequested content from the identified hosting web server; receiving therequested content as standard content from the identified hosting webserver; converting the standard content to mobile content by replacingcode in the requested content with code that provides at least partlyequivalent functionality on the mobile device; sending the mobilecontent to the mobile device; determining that a second request of theplurality of requests is a non-mobile request that originates from anon-mobile standard device; and responsive to the non-mobile request,serving the standard content to the non-mobile device unaltered.
 2. Themethod of claim 1, further comprising a step of determining a mobiledevice profile based upon information about the requesting devicederived from the mobile request for content, wherein the code thatprovides the at least partly equivalent functionality is identifiedbased at least in part upon the determined profile.
 3. The method ofclaim 1, further comprising a step of storing the requested content onthe web server in a first format adapted to be rendered using a firsttype of media player, wherein the step of converting the standardcontent to mobile content further comprises convening the requestedcontent to a second format that is adapted to be rendered by a secondtype of media player on the mobile device.
 4. The method of claim 3,further comprising a step of determining a mobile device profile basedupon information about the requesting device derived from the mobilerequest for content wherein the step of converting the requested contentto the second format is performed based at least in part upon thedetermined profile.
 5. The method of claim 1, wherein the step ofconverting the standard content to mobile content comprises inserting atleast one advertisement adapted to be rendered by the mobile device. 6.The method of claim 1, wherein the step of requesting the requestedcontent is performed using a reverse proxy call to the hosting webserver.
 7. The method of claim 1, further comprising a step of sending,to the identified hosting web server, at least one credential toauthenticate the requesting user; wherein the requested content receivedas standard content from the identified hosting web server includescontent that is available only to an authenticated user.
 8. The methodof claim 1, wherein the step of determining that the mobile requestoriginates from the mobile device comprises identifying a user agentstring received with the request as being associated with a mobiledevice.
 9. A system comprising: a standard to mobile content servercomprising a processor, the standard to mobile content server configuredto: receive a first request from a mobile device, the request resultingfrom a redirect instruction sent to the mobile device by a first webserver and specifying content to be delivered to the mobile device;identify a hosting web server hosting the content; receive the contentas standard content from the hosting web server; convert the standardcontent to mobile content by replacing code in the requested contentwith code that provides at least partly equivalent functionality on themobile device; and send the mobile content to the mobile device.
 10. Thesystem of claim 9, further comprising: the hosting web server,configured to; prior to said standard to mobile content server receivingthe first request, receive a second request for the content from themobile device; determine that the second request of the plurality ofrequests is a mobile request; and send the redirect instruction to themobile device, the redirect instruction specifying the standard tomobile content server.
 11. The system of claim 10, said hosting webserver further configured to: receive a third request from a non-mobilestandard device; determine that the third request is a non-mobilerequest that originates from a non-mobile standard device; andresponsive to the non-mobile request, serve the content to thenon-mobile standard device unaltered.
 12. The system of claim 9, saidstandard to mobile content server further configured to determine amobile device profile based upon information about the mobile devicederived from the first request, wherein the code that provides the atleast partly equivalent functionality is based at least in part upon thedetermined profile.
 13. The system of claim 9, said standard to mobilecontent server further configured to convert the content from a firstformat adapted to he rendered by a first type of media player to asecond format that is adapted to be rendered by a second type of mediaplayer on the mobile device.
 14. The system of claim 9, said standard tomobile content server further configured to determine a mobile deviceprofile based upon information, about the mobile device derived from thefirst request, wherein the code that provides the at least partlyequivalent functionality is based at least in part upon the determinedprofile.
 15. The system of claim 9, said standard to mobile contentserver further configured to insert at least one advertisement adaptedto be rendered by the mobile device into the mobile content.
 16. Thesystem of claim 9, said standard to mobile content server furtherconfigured to obtain the content from the hosting web server via areverse proxy call to the hosting web server.
 17. The system of claim 9,said standard to mobile content server further configured to send, tothe hosting web server, at least one credential to authenticate theuser; wherein the content includes content that is available only to anauthenticated user.
 18. A method for providing mobile content based onstandard content, the method comprising: receiving, at a first server, aplurality of requests for content, each request received from either amobile device or a standard device; determining that a first request ofthe plurality of requests is a mobile request that originated from amobile device; obtaining standard content requested by the firstrequest; determining a mobile device profile based upon informationabout the requesting device derived from the mobile request for content;transforming the standard content in real-time tomobile-device-compatible content; and sending the mobile content to themobile device.
 19. The method of claim 18, wherein the step oftransforming the web content in real-time to mobile-device-compatiblecontent further comprises normalizing an HTML version of the requestedcontent to an XHTML-MP version of the requested content to form themobile content.
 20. The method of claim 18, further comprisingconverting the requested content from a first format adapted to berendered using a first type of media player, to a second format that isadapted to be rendered by a second type of media player on the mobiledevice.